#pragma once
#include <QWidget>
#include <QTableView>
#include "Delegate.h"

/**
 * @brief 主窗口类
 * 负责创建和管理表格视图、数据模型和代理
 */
class MainWidget : public QWidget
{
    Q_OBJECT

public:
    /**
     * @brief 构造函数
     * @param parent 父窗口
     */
    explicit MainWidget(QWidget *parent = nullptr);
    
    /**
     * @brief 析构函数
     */
    ~MainWidget();

private:
    QTableView *m_tableView;         // 表格视图
    BigDataModel *m_model;          // 数据模型
    ProgressBarDelegate *m_progressDelegate; // 进度条代理
    StarRatingDelegate *m_starDelegate;     // 星级评分代理
};
